package com.suning.sawp.intf.bi;

import com.suning.sawp.dto.bi.BiDealErrorException;
import com.suning.sawp.dto.bi.BiFileErrorNoticeException;


/**
 * 
 * 处理BI ftp抛的数据<br> 
 * 〈功能详细描述〉
 *
 * @author 12061818
 * @see [相关类/方法]（可选）
 * @since [产品/模块版本] （可选）
 */
public interface BiFtpDataService {
    /**
     * 
     * 功能描述: 解析ftp 上 BI抛的数据<br>
     * 〈功能详细描述〉
     *
     * @param biFileName bi抛的相应文件名
     * @param statisDate 文件统计日期
     * @throws BiFileErrorNoticeException
     * @see [相关类/方法](可选)
     * @since [产品/模块版本](可选)
     */
    void dealBiFtpData(String biFileName, String statisDate) throws BiDealErrorException;

    /**
     * 
     * 功能描述: 删除某日的BI数据<br>
     * 〈功能详细描述〉
     *
     * @param biFileName BI文件名
     * @param statisDate 统计日期
     * @see [相关类/方法](可选)
     * @since [产品/模块版本](可选)
     */
    void deleteBiFtpDataByDay(String biFileName, String statisDate);
    
    /***
     * 
     * 功能描述: 处理每月重抛的上月提成明细数据信息<br>
     * 〈功能详细描述〉
     *
     * @param statisDate 统计日期
     * @param biFileName BI文件名
     * @see [相关类/方法](可选)
     * @since [产品/模块版本](可选)
     */
    void dealBiIncDetailRecoverData(String statisDate, String biFileName) throws BiDealErrorException;
    
    /**
     * 
     * 功能描述: 处理上月月末最后一天店员累计提成的<br>
     * 〈功能详细描述〉
     *
     * @throws BiDealErrorException
     * @see [相关类/方法](可选)
     * @since [产品/模块版本](可选)
     */
    void dealBiIncomeRecoverData(String statisDate, String biFileName) throws BiDealErrorException;
}
